package com.jinbooks.persistence.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jinbooks.entity.merchant.MerchantProduct;
import com.jinbooks.entity.merchant.dto.MerchantProductPageDto;

import java.util.List;

/**
 * 商户产品Service接口
 *
 * @author lingma
 */
public interface MerchantProductService {

    /**
     * 分页查询商户产品列表
     *
     * @param dto 查询条件
     * @return 商户产品分页列表
     */
    Page<MerchantProduct> pageList(MerchantProductPageDto dto);

    /**
     * 根据ID获取商户产品详情
     *
     * @param id 商户产品ID
     * @return 商户产品详情
     */
    MerchantProduct getById(String id);

    /**
     * 新增商户产品
     *
     * @param merchantProduct 商户产品信息
     * @return 是否新增成功
     */
    boolean save(MerchantProduct merchantProduct);

    /**
     * 更新商户产品
     *
     * @param merchantProduct 商户产品信息
     * @return 是否更新成功
     */
    boolean update(MerchantProduct merchantProduct);

    /**
     * 根据ID删除商户产品
     *
     * @param id 商户产品ID
     * @return 是否删除成功
     */
    boolean deleteById(String id);

    /**
     * 批量删除商户产品
     *
     * @param ids 商户产品ID列表
     * @return 是否删除成功
     */
    boolean deleteByIds(List<String> ids);
}